import matplotlib.pyplot as plt
import seaborn as sns



# 数据准备
# 在 Seaborn 里，使用二元变量分布是非常方便的，直接使用 sns.jointplot(x, y, data=None,kind)
# 函数即可。其中用 kind 表示不同的视图类型：“kind='scatter'”代表散点图，
# “kind='kde'”代表核密度图，“kind='hex' ”代表 Hexbin 图，它代表的是直方图的二维模拟。
# 这里我们使用 Seaborn 中自带的数据集 tips，这个数据集记录了不同顾客在餐厅的消费账单
# 及小费情况。代码中 total_bill 保存了客户的账单金额，tip 是该客户给出的小费金额。我们
# 可以用 Seaborn 中的 jointplot 来探索这两个变量之间的关系。

# 代码中我用 kind 分别显示了他们的散点图、核密度图和 Hexbin 图，如下图所示。

tips = sns.load_dataset("tips")
print(tips.head(10))

# 用Seaborn画二元变量分布图（散点图，核密度图，Hexbin图）
sns.jointplot(x="total_bill", y="tip", data=tips, kind='scatter')
sns.jointplot(x="total_bill", y="tip", data=tips, kind='kde')
sns.jointplot(x="total_bill", y="tip", data=tips, kind='hex')
plt.show()